#pragma once
#ifndef STATIC_MESH_H
#define STATIC_MESH_H
#include "Base.h"
#include "Engine\Engine_Def.h"
#include "Camera\Object3D.h"
#include "Math/Vector3.h"

class CGraphicsManager;
class CRenderableVertexs;
class CTexture;

class CStaticMesh
{
	protected:
		std::vector<CRenderableVertexs*> m_RVs;
		std::vector<std::vector<CTexture *>> m_Textures;
		std::string m_FileName;
		unsigned int m_NumVertexs, m_NumFaces;
	public:
		CStaticMesh();
		~CStaticMesh();
		bool Load(const std::string &FileName);
		bool ReLoad();
		void Render(CGraphicsManager *GM) const;
		void Unload();
	private:
		void FillRVs(FILE *File, const u_short VertexType);
};


#endif